System and Method of Simultaneous Computation of Optimal Order Point and Optimal Order Quantity

ABSTRACT

A system is disclosed for simultaneous computation of optimal order point and optimal order quantity. The system includes one or more memory units and on ore more processing units, collectively configured to receive initial inputs, initialize a first, at least second and final locations and the initial inputs and compute a first baseline inventory performance of the first level. The system is further configured to compute at least a second inventory performance of the at least second level and perform optimization iterations by simultaneously determining a change in inventory performance for the first and the at least second level when the re-order point (R) is incremented by a specified R increment value and when the re-order quantity is incremented by a specified Q increment value. The system is further configured to report the reorder point and reorder quantity for the first, the at least second, and the final location.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.13/327,743, filed on Dec. 15, 2011, entitled “SYSTEM AND METHOD OFSIMULTANEOUS COMPUTATION OF OPTIMAL ORDER POINT AND OPTIMAL ORDERQUANTITY.” U.S. patent application Ser. No. 13/327,743 is assigned tothe assignee of the present application. The subject matter disclosed inU.S. patent application Ser. No. 13/327,743 is hereby incorporated byreference into the present disclosure as if fully set forth herein.

TECHNICAL FIELD OF THE INVENTION

This invention relates generally to computer implementable systems,methods, and mediums for calculating inventory levels, and moreparticularly to a system and method of simultaneous computation ofoptimal order point and optimal order quantity.

BACKGROUND OF THE INVENTION

Current methodologies and systems for computer service level targetsrely on static or disjointed calculations. For example, prior existingsolutions for computing an order quantity use a simple economic orderquantity (EOQ) formula. The EOQ formula, however, does not take intoaccount the service level targets. Furthermore, EOQ calculations do nottake into account the demand and lead time variability that exist in asupply chain. EOQ calculations are calculated offline and subsequentlyused as static input to the computation of the reorder point. Systemsbased upon EOQ calculations do not provide the visibility of a servicelevel driven order quantity. Therefore, previous methods have proveninadequate.

SUMMARY OF THE INVENTION

A system for simultaneous computation of optimal order point and optimalorder quantity is disclosed. The system includes one or more memoryunits and on ore more processing units, collectively configured toreceive initial inputs, initialize a first, at least second and finallocations and the initial inputs and compute a first baseline inventoryperformance of the first level. The system is further configured tocompute at least a second inventory performance of the at least secondlevel and perform optimization iterations by simultaneously determininga change in inventory performance for the first and the at least secondlevel when the re-order point (R) is incremented by a specified Rincrement value and when the re-order quantity is incremented by aspecified Q increment value. The system is further configured to reportthe reorder point and reorder quantity for the first, the at leastsecond, and the final location.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. However, the invention itself, as well asa preferred mode of use, and further objectives and advantages thereof,will best be understood by reference to the following detaileddescription when read in conjunction with the accompanying drawings,wherein:

FIG. 1 illustrates an exemplary multi-echelon supply chain according toa preferred embodiment;

FIG. 2 is a block diagram illustrating an exemplary system in accordancewith an embodiment;

FIG. 3 is a flowchart illustrating an embodiment of an optimizationinventory performance computation;

FIG. 4 is a flowchart illustrating an embodiment of a base-lineinventory performance computation;

FIG. 5 is a flowchart illustrating an exemplary method of computing Rand Q system performance derivatives;

FIG. 6 is a flowchart illustrating an exemplary method of computing newsystem performance and cost; and

FIG. 7 is a graph illustrating inventory position.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made to the following detailed description of thepreferred and alternate embodiments. Those skilled in the art willrecognize that the present invention provides many inventive conceptsand novel features, that are merely illustrative, and are not to beconstrued as restrictive. Accordingly, the specific embodimentsdiscussed herein are given by way of example and do not limit the scopeof the present invention.

Various embodiments of the disclosures presented herein enable companiesor users to implement an optimal order point, or the inventory level atwhich an order should be placed. Companies or users may further beenabled to implement an optimal order quantity, or the size of the orderto be placed. Service level targets may be measured at a finished goodslevel to insure customer demand is met. Meeting these service leveltargets is largely dependent on the optimal order point and the optimalorder quantity. Simultaneous computation of both the optimal order pointand optimal order quantity solves most, if not all, aspects ofinventory, including the safety stock and the cycle stock.

In an embodiment, the optimal re-order point (R) and/or optimal orderquantities (Q) are computed or calculated. The service level, then, is afunction of R and Q. Various embodiments presented herein achieve thedesired service level by iterative over both R and Q, and measuring theimpact of change on the service level in each iteration. In anembodiment, a lower cost solution is selected in each iteration untilthe desired service level is achieved. Such computations may be doneacross the entirety of any supply chain, measuring the impact ofchanging R and Q at all levels/nodes in the supply chain, whilemeasuring the end customer service levels. Organizations, companies, orany other user may, therefore, get an optimal re-order point and orderquantity to achieve desired service levels.

FIG. 1 illustrates an exemplary multi-echelon supply chain 100 accordingto a preferred embodiment. Multi-echelon supply chain 100 receivesfinished goods from one or more entities 110 and ships the finishedgoods to one or more customers 140 a-c. According to one embodiment,multi-echelon supply chain 100 may include any suitable number of nodes120 a-d and any suitable number of arcs 130 a-f configured in anysuitable manner. Downstream refers to the direction from entities 110 tocustomers 140 a-c, and upstream refers to the direction from customers140 a-c to entities 110. In the illustrated example, entities 110supplies finished goods to node 120 a and also node 120 c. Node 120 asupplies finished goods to node 120 b, which provides finished goods tocustomer 140 a. Node 120 c supplies finished goods to node 120 d, whichprovides finished goods to customer 140 c and also provides finishedgoods to customer 140 b.

Multi-echelon supply chain 100 may include any suitable number of nodes120 a-d and any suitable number of arcs 130 a-f configured in anysuitable manner. Downstream refers to the direction from entities 110 tocustomers 140 a-c, and upstream refers to the direction from customers140 a-c to entities 110. In the illustrated example, entities 110supplies finished goods to node 120 a and also node 120 c. Node 120 asupplies finished goods to node 120 b, which provides finished goods tocustomer 140 a. Node 120 c supplies finished goods to node 120 d, whichprovides finished goods to customer 140 c and also provides finishedgoods to customer 140 b.

Multi-echelon supply chain 100 includes one or more starting nodes 120 aand 120 c upstream from one or more ending nodes 120 b and 120 d. Eachstarting node, in this example node 120 a and 120 c, receives finishedgoods directly from one or more entities 110, possibly in addition tofinished goods from one or more upstream nodes that each receivefinished goods directly or indirectly from one or more entities 110.Each ending node, in this example nodes 120 b and 120 d, suppliesfinished goods directly to one or more customers 140 a-c, possibly inaddition to finished goods supplied to one or more downstream nodes thateach supply finished goods directly or indirectly to one or morecustomers 140 a-c. A starting node and an ending node may define a paththat includes a starting node, an ending node, and any intermediatenodes between the starting node and the ending node.

One or more entities 110 may refer to, for example, a manufacturingplant at the top level of multi-echelon supply chain 100 where thefinished goods are produced. Finished goods flow through multi-echelonsupply chain 100 and may comprise, for example, parts, supplies, orservices that may be used to generate products or may comprise theproducts themselves. Finished goods are shipped to nodes, which may be,for example, warehouses where the finished goods may be stored andshipped to other nodes, which may be, for example, regional distributioncenters where the finished goods may be stored before being shipped tocustomers.

Although multi-echelon supply chain 100 is illustrated as having aparticular number of entities 110, customers 140 a-c, nodes 120 a-d, andarcs 130 a-f, any suitable modifications, additions, or omissions may bemade to multi-echelon supply chain 100 without departing from the scopeof the invention. For example, multi-echelon supply chain 100 may havemore or fewer nodes or arcs. As another example, node 120 a may supplyfinished goods to node 120 d rather than to node 120 b. As anotherexample, node 120 a may supply finished goods directly to a customer 140a.

FIG. 2 is a block diagram illustrating an example system 200 inaccordance with a preferred embodiment. System 200 comprises a computer220 and a database 230. System 200 may be coupled with one or moresupply chain entities of a supply chain network using one or more localarea networks (LANs), metropolitan area networks (MANs), wide areanetworks (WANs), such as, for example, the Internet, or any otherappropriate wire line, wireless, or other links. Although a singlecomputer 220 and a single database 230, are shown and described;embodiments contemplate any number of computers and/or any number ofdatabases, according to particular needs. In addition, or as analternative, system 200 may be integral to or separate from the hardwareand/or software of any one of the one or more supply chains entities.

In one embodiment, computer 220 includes any suitable input device, suchas a keypad, mouse, touch screen, microphone, or other device to inputinformation. An output device conveys information associated with theoperation of system 200, including digital or analog data, visualinformation, or audio information. Computer 220 includes fixed orremovable computer-readable storage media, such as, for example,magnetic computer disks, CD-ROM, or other suitable media to receiveoutput from and provide input to system 200. Computer 220 includes oneor more processors and associated memory to execute instructions andmanipulate information according to the operation of system 200.

Although a single computer 220 is shown in FIG. 2, system 200 mayoperate on separate computers 220 or may operate on one or more sharedcomputers 220. Each of these one or more computers 220 may be a workstation, personal computer (PC), network computer, notebook computer,personal digital assistant (PDA), cell phone, telephone, wireless dataport, or any other suitable computing device.

In one embodiment, the memory associated with one or more computers 220comprises any of a variety of data structures, arrangements, and/orcompilations configured to store and facilitate retrieval ofinformation. The memory may, for example, comprise one or more volatileor non-volatile memory devices. Although the memory is described asresiding within one or more computers 220, the memory may reside in anylocation or locations that are accessible by one or more computers 220or the one or more processors. The memory may store and the one or moreprocessors may process any suitable information to perform operationsin, for example, system 200.

Database 230 comprises one or more databases or other data storagearrangements at one or more locations, local to, or remote from,computer 220. Database 230 may be coupled with computer 220 using one ormore local area networks (LANs), metropolitan area networks (MANs), widearea networks (WANs), such as, for example, the Internet, or any otherappropriate wire line, wireless, or other links. Database 230 storesdata that may be used by computer 220.

A particular embodiment may comprise a multi-echelon supply chain forfinished goods. Other embodiments may comprise any number of levels forproducts and any stage of production, including but not limited to rawmaterials, supplies, partially manufactured goods, or finished goods. Inan embodiment, a supply chain may consist of a plant, at the top levelof the supply chain, where the finished good is produced. The productmay then be shipped to any number of warehouse at the next level down inthe supply chain. From the warehouse, the product may be shipped to anynumber of regional distribution centers, followed by shipment to anynumber of customers.

Customer demand is typically experienced at the end echelon, location,or lowest level. On occasion, however, a warehouse or other middleechelon location may ship directly to customers. Customer demand,therefore, may also be experienced at those or any other location.Regional distribution centers or various other locations need to have anoptimal performance of customer service. In an embodiment, customerservice may be defined as high fill rate or lower customer wait time. Inother embodiments, customer service may comprise any value orcharacteristic that aids in serving a customer. Furthermore, finishedgoods inventory may be held at all levels. An objective of an embodimentof the model may be to find optimal inventory parameters re-order pointand re-order quantity in a supply chain so that the customer serviceprovided by the supply chain is optimal.

Customer service performance may be measured against customer orders, orthe demand of a product. However, since the mode is required to computethe expected optimal customer performance, the model is computed usingthe forecast demand. Forecast demand is the anticipated or projectedcustomer demand. In a model, an average demand that represents a longterm forecast demand may be utilized. In other models, any demand valuerepresenting any period of time or other variety of characteristic. Invarious embodiments, the demand or forecast demand may be inputted by auser into the model. Because, however, the demand may comprise aforecast demand, errors may occur in the forecast. The forecast error istypically represented using a mean square error (MSE) of the forecast,and may be computed by comparing the historical forecast and actualcustomer orders. The forecast error may be taken as a user input to themodel, rather than being computed by the model. In an embodiment, theuser may provide the forecast error at all echelons of the model.

Lead-time at the producing location, plant, or any other location maycomprise the production lead-time in various embodiments. If thefinished good is not produced, but is rather procured from a supplier ora vendor, then the lead-time may be the procurement lead-time. At otherlevel echelons, such as but not limited to warehouses and/ordistribution centers, the lead-time may comprise the transportationlead-time from the source location. In an embodiment of a model, thelead-time may be assumed to be an average observed lead-time.

The lead-time may further be assumed to be varying for each procurement.Such a variability in lead-time may impact performance of the supplychain. Variability of the lead-time may be expressed in an embodiment ofa model as the mean square error (MSE) of the lead-time. MSE of thelead-time may be computed by comparing the historical production andshipment plan versus the actual performances. The lead-time error may,in some embodiments, be taken as a user input to the model rather thanbe computed by the model. Accordingly, the user may provide thelead-time error at all echelons of the model.

For example, as shown in FIG. 7, inventory position is defined ason-hand+on-order inventory of any item-location. Demand may continuouslyconsume the inventory position over periods of time as shown. Re-orderpoint (R) may be defined as a level at which replenishment order of thequantity of re-order quantity (Q) is placed. When the replenishmentorder is placed, the on-order quantity may be increased, and hence theinventory position may raise to a maximum level of R+Q, as shown in FIG.7.

In an embodiment, an objective is to compute the optimal re-order point(R) and the re-order quantity (Q) so that the system can provide thedesired service level in meeting customer demands. Various equations andsymbols may be utilized in determining the R and Q. A summary of thesymbols and explanations of the symbols may be found in Table 1.

TABLE 1 Symbol Explanation D The random variable representing the demandμ_(D) Average demand σ_(D) ² Variance of demand L The random variablerepresenting the procurement lead time μ_(L) Expected Procurement leadtime μ_(L) = E[L] σ_(L) ² Variance of procurement lead time σ_(L) ² =Var[L] PPV The random variable representing the procurement problemvariable μ_(PPV) Mean of the Procurement Problem Variable μ_(PPV) =E[PPV] σ_(PPV) ² Variance of procurement problem variable σ_(PPV) ² =Var[PPV] UC Unit Cost HC Holding Cost OC Ordering Cost

In an embodiment, the mean of PPV may be defined as μ_(PPV)=μ_(D)μ_(L)The variance of PPV may be defined as σ² _(PPV)=μ_(L)σ_(D) ²+μ_(D)²σ_(L) ²

For a given stock level of an item-location, defined as a scenario “i”,there are different scenarios. In a first scenario, the item may be atthe produced or procured location. For a consumable item at the highestlevel location, only one replenishment scenario may exist: any itemsneeded must be produced or procured, and the distribution of theprocurement time does not change. The performance formulas may be useddirectly as shown in Table 2.

TABLE 2 Scenario P_(s) □_(L) σ_(L) ² 1 1 L_(i0) σ_(Li0) ²

In a second scenario, the item may be at a destination location. In amulti-echelon network, a lower level location (destination) in thesupply chain may experience various impacts. The lead-time may equal theaverage lead-time to the source and expected customer wait-time at thesource. The lead-time variance may equal the lead-time variance on thenetwork plus the variance of customer wait time at the source. For anitem at a destination location, the distribution of the procurement leadtimes may vary depending on whether or not there is stock available atthe source level. At least two replenishment scenarios may exist: first,the source location has the item in stock, or second, the sourcelocation does not have the item in stock. Parameters describing thesescenarios may include those shown in Table 3.

TABLE 3 In stock Scenario at depot P_(s) □_(L) σ_(L) ² 1 Yes FR_(i0)t_(ship) 0 2 No 1-FR_(i0) t_(ship) + Var[CondWT_(i0)] E[CondWT_(i0)]

For any item-location for each scenario “1” and for any given R and Q,the following inventory performances may be computed using the followingequations:

Fill rate=a function of first order loss function of the R and R+Q

Compute:

${FR}_{i} = {1 - \frac{{G_{i}^{1}(r)} - {G_{i}^{1}\left( {r + Q} \right)}}{Q}}$Expected back order=a function of second order loss function of the Rand R+Q

Compute:

${E\left( B_{i} \right)} = \frac{{G_{i}^{2}(r)} - {G_{i}^{2}\left( {r + Q} \right)}}{Q}$

Variance of back order=a function of back order level and second orderloss function of the R and R+Q:

${{Var}\; \left( B_{i} \right)} = {{\frac{2}{Q}\left( {\sum\limits_{k = 1}^{Q}\; {G_{i}^{2}\left( {r + k} \right)}} \right)} + {E\left( B_{i} \right)} - {E\left( B_{i} \right)}^{2}}$

In the above equations, G_(i) ¹ (x) and G_(i) ² (x) for the scenario “i”may be the first and second order loss functions, given an argument x.The logic to compute different loss functions may be based on the valueof μ_(PPV) and σ_(PPV) ² of the scenario.

The overall fill rate for this and other item-location for the currentvalue of R and Q may be computed as:

${FR} = {\sum\limits_{i = 1}^{N}\; {p_{i}{FR}_{i}}}$

The overall expectation of backorders E(B) for this item-location forthe current value of R and Q may be computed as:

${E\lbrack B\rbrack} = {\sum\limits_{i = 1}^{N}\; {p_{i}{E\left( B_{i} \right)}}}$

The overall variance of backorders Var (B) for this item-location forthe current value of R and Q may be computed as:

${{Var}\lbrack B\rbrack} = {{\sum\limits_{i = 1}^{N}\; {p_{i}\mspace{11mu} {{Var}\left( B_{i} \right)}}} + {E\left( B_{i} \right)}^{2} - \left( {\sum\limits_{i = 1}^{N}\; {p_{i}{E\left( B_{i} \right)}}} \right)^{2}}$

The expected customer wait time may equal a function of expected backorder and average demand, expressed as:

${E\lbrack{CWT}\rbrack} = \frac{E\lbrack B\rbrack}{\mu_{D}}$

The variance of customer wait time may equal a function of variance ofback order, expected backorder, average demand, and demand variance,expressed as:

${{Var}\lbrack{CWT}\rbrack} = \frac{{{Var}\lbrack B\rbrack} - {\frac{\sigma_{D}^{\; 2}}{\mu_{D}}{E\lbrack B\rbrack}}}{\mu_{D}^{\; 2}}$

The overall expectation and variance of conditional wait-times for theitem-location for the current level of R and Q may be computed as

$\mspace{79mu} {{E\lbrack{CondWT}\rbrack} = {\frac{E\lbrack{CWT}\rbrack}{1 - {FR}}\mspace{14mu} {and}}}\mspace{14mu}$${{Var}\lbrack{CondWT}\rbrack} = \frac{{{Var}\lbrack{CWT}\rbrack} - {\left( {1 - {FR}} \right)\left( {{E\lbrack{CondWT}\rbrack} - {E\lbrack{CWT}\rbrack}} \right)^{2}} - {{FR}\left( {E\lbrack{CWT}\rbrack}^{2} \right)}}{\left( {1 - {FR}} \right)}$

Performance of the optimization may include various goals. For example,the inventory performance of an item-location may be a function of R andR+Q. This inventory performance of any item location may have an impactof the inventory performance of a down-stream location. The impact oreffect on the down-stream location may be due to the effect of customerwait-time at the source location. Using this property of inter-relationof R and Q of each level location, the optimal R and optimal Q may becomputed through iterations of R and Q.

To find the optimality, the performance derivative of the cost may beutilized. The cost utilized here may comprise total cost, including butnot limited to total cost. In an embodiment, the cost utilized is demandunit cost plus average inventory holding cost plus ordering cost, whereaverage inventory is a function of Q, R, and an expected backorder. Thismay be expressed as:

$\mspace{79mu} {{AverageInventory} = {\frac{Q + 1}{2} + R - \mu_{PPV} + {E\lbrack B\rbrack}}}$Annual  Inventory  Cost = D * 365 * UC + Average  Inventory * HC + OC * ((D * 365)/Q)

The average inventory cost may equal the average inventory multiplied bythe holding cost (rate). In an embodiment, an objective function of theoptimization may be defined as the increase in inventory performance ofincreasing the R or Q, for least increase in cost.

Various embodiments may require the user to provide and/or inputinformation. In an embodiment, the user may provide a multi-echelonsupply structure. The multi-echelon supply chain structure may compriseany variety of item-locations and source relations to theitem-locations.

In an embodiment, the user may provide a lead-time distribution. For thehighest level item-locations, average lead-time may comprise the averageproduction of procurement lead time. The variance of lead-time maycomprise the variance in production or procurement lead time. Fordestination locations, the average lead time is the transportation leadtime between locations, and the variance of transportation lead timebetween locations.

In an embodiment, the user may provide demand distributions for eachitem-location. This may comprise a mean daily demand for eachitem-location and/or a demand variance for each item-location.

In an embodiment, the user may provide a target performance. The targetperformance may comprise at least one of either a fill rate or customerwait time at the end locations. The end locations, for example, maycomprise a customer facing location where the demand may be filled.

In an embodiment, the user may provide heuristic parameters. Theheuristic parameters may comprise a parameter that increments to iteratethe re-order point and increments to iterate the re-order quantity. Insome embodiments, these parameters may not be provided or included. Ifnot provided, each parameter may be assumed to equal 1.

The optimization may then be initialized at all item-locations with thesupply chain structure and any of the user provided initial values.

FIG. 3 illustrates optimization steps of an embodiment. The optimizationmay begin by computing a baseline performance 302 (shown in greaterdetail in FIG. 4). The baseline performance may then be compared to atarget performance 304. A determination may then be made as to whetherperformance objectives have been met 306. If performance objectives havebeen met, then the optimization may end. If performance objectives havenot been met, the optimization may then proceed to compute R and Q forall item-locations 308 (shown in greater detail in FIG. 4).Item-location derivatives may then be sorted 310. Item-locationderivatives may be associated with delta system per f/delta system cost.From this, a best or preferred derivative may be selected 312.

An embodiment of the optimization may continue by determining whetherthe best derivative is the R derivative 314. If the best derivative isthe R derivative, then the winning item-location's R may be changed toequal R plus Inc R 318. If the best derivative is the Q derivative, thewinning item-location's Q may be changed to equal Q plus Inc Q 316. Thesystem performance and cost may then be recomputed 320. A comparison ofthe baseline performance to the target performance 322 may then occur. Adetermination of whether performance objectives have been met 324 may bemade. If the performance objectives are met, then the optimization mayend. If the performance objectives have not been met, the optimizationmay then return to compute R and Q derivatives for all item-locations308, and proceed as previously described.

FIG. 4 illustrates a flowchart of an exemplary base-line inventoryperformance computation of an embodiment. For each item, the highestlevel locations in the supply chain may comprise the start of thecomputation. The initial re-order point may be set as a user-providedincrement of re-order point R, while the initial re-order quantity maybe set as a user-provided increment of reorder quantity.

All the inventory performances for this R and R+Q may then be computedusing the previously noted math equations. This may include thecomputation of customer wait-time and customer wait-time variance at aparticular level in a supply chain. This computed customer wait-time andcustomer wait-time variance may be used in the destination locationscenarios, as described in the inventory performance math equations.

The second highest level item-location inventory performance may then becomputed in an embodiment. The computation of base-line performancescomputation of all lower level item-locations may be repeated. Thiscomputation may use the higher level item-location customer wait time,customer wait time, and custom wait time variances computed.

In an embodiment, the base-line inventory performance computation maybegin by sorting of all item-locations by item and then by theirlocation level 402. Sorting by location may comprise sorting from thehighest level to the lowest level. The base-line inventory performancecomputation may continue by getting or retrieving the firstitem-location in the sorted list 404. A determination may then be madeif any item locations have been found 406. If none have been found thebase-line performance computation may end. If any have been found, thebase-line inventory performance computation may then set R to equal lncR and set Q to equal lnc Q 408. The base-line inventory performancecomputation may then determine whether the item-location has any source410. If the item-location has a source, then the source's computed CWTmay be added to the lead-time, and CWT-variance added to the lead-timevariance 412. The inventory performance FR, EBO, CWT, CWT-variance,EBO-variance, amongst other things, may then be computed 414.

If the item location does not have any source, then the base-lineinventory performance computation does not add the source's computed CWTto the lead-time and the CWT-variance to the lead-time variance.Instead, the base-line inventory performance computation may jumpdirectly to computing inventory performances FR, EBO, CWT, CWT-variance,EBO-variance, and the like 414.

The next item-location in the sorted list may then be retrieved, viewed,or prepared for analysis 416. A determination may then be made whetherthere are more item-locations 418. If there are more item-locations,then the base-line inventory performance computation may return to set Requal to lncR and Q equal to lncQ 408. If there are no moreitem-location, then the base-line inventory performance computation mayend.

Various embodiments may run at least one optimization iteration.Optimization iterations involve computing an impact of inventoryperformance for all related SKUs (or all levels of destinations) by twoquestions: 1. What if the re-order point (R) is incremented by theuser-specified increment value; and 2. What if the re-order quantity(Q)is incremented by the user-specified increment value.

FIG. 5 illustrates an exemplary flowchart for computing R and Q systemperformance derivatives. In an embodiment, computing R and Q systemperformance derivatives may comprise getting or retrieving a nextitem-location 502 and starting computation of item-location derivatives504. Computing R and Q system performance derivatives may then splitinto two paths. First, R equals R and Q is set to equal Q+lnc Q 506. Anew system performance and cost may then be retrieved or prepared 508(as shown in greater detail in FIG. 6). Delta performance and cost forthe change in Q may then be computed 510, followed by the derivative forthe change in Q 512. The Q derivative may then be added to the list 514.

A second path may comprise setting R equal to R plus lnc R, where Qequals Q 516. A new system performance and cost may then be retrieved orprepared 518 (as shown in greater detail in FIG. 6). Delta performanceand cost for the change in R may then be computed 520, followed by thederivative for the change in R 522. The Q derivative may then be addedto the list 524. After both the R derivative 524 and the Q derivative514 are added to the list, a determination may be made whether moreitem-locations are necessary or present to compute or derivate 526. Ifyes, then the computing R and Q system performance derivative returns toget the next item-location 502. If there are no more locations tocompute or derivate, then the computation may end.

In an embodiment, each item-location increment of each variable R and Qmay provide a set of results, including target performance and/oraverage inventory of all the related item-locations. The systeminventory performance may be computed as an independent demand weightedsum of performance of all item-locations for each hypothesis or questionfor each iteration. System inventory cost may be computed as a sum ofthe total annual cost of all item-locations, for each hypothesis orquestion for each location.

FIG. 6 illustrates an exemplary flowchart for computing a new systemperformance and cost. In an embodiment, computing a new systemperformance and cost may comprise getting or otherwise retrieving acurrent setting of item-location's R and Q 602. A determination may thenbe made whether the item location has any source 604. If theitem-location has a source, then the source's computed CWT may be addedto the lead-time, and the CWT-variance may be added to the lead-timevariance 606, before the inventory performance FR, EBO, CWT,CWT-variance, and EBO variance are computed 608. If the item-locationdoes not have a source, the inventory performance FR, EBO, CWT,CWT-variance, and EBO variance are computed without additions describedin relation to 606.

Total annual cost may also be computed 610 in various embodiments.Computation of delta performance and delta cost due to change in Rand/or Q 612 may then be performed. Delta performance and delta cost maythen be added to system performance and system cost 614. A determinationmay then be made whether the item-location has any destination 616. Ifno, then a return to system performance and cost 620 may occur. If itdoes, then destination from the higher level to the lower level may thenbe retrieved 618.

In an embodiment, the system performance derivative may be computed as asystem inventory performance/system inventory cost. Such a systemperformance derivative computed for increment R for each item-locationand increment Q for each item-location may be compared. The best systemfor performance derivative and, hence, the item location and one of itshypothesis or questions (increment R or increment Q is selected a winnerhypothesis.

The inventory performance of all related destination item-locationspertaining to the winning item-location may be computed afterincrementing either R or Q. All other item-location iterations of Rand/or Q will be reset, as they may typically comprise merelyhypothetical increments that do not win. In an embodiment, the abovereference set of iterations are repeated until all end-echelon itemlocations achieve the target performance specified by the user, such asbut not limited to the fill rate or customer wait time.

In various embodiments, the optimization may comprise optimizationconstraint iterations. For example, a user may specify performanceconstraints on some item-locations to achieve certain minimumperformance levels of fill rate or customer wait time. This constraintmay be specified on any item-location. In such situations, only theitem-locations that have the performance constraints and theirdestination locations may be considered for optimization constraintsiterations. The same hypothesis of incrementing R and/or Q will beperformed until all the item-location performance constraints areachieved.

Various embodiments of the optimization may further comprise costreduction repair iterations. For example, when the performanceconstraints are specified by the user, the iterations of incrementingthe R and/or Q may be performed to meet those constraints over and aboveiterations required to meet the end-echelon target performance. This mayresult in over-achieving the end-echelon target performance.Over-achieving the end echelon target may result in higher inventorycost in the system as either R or Q at some item-locations may havereached over the true optimal levels due to constraints.

To over come this, some item-location R and/or Q may be reduced withoutaffecting the performance constraints specified and/or end echelonlocations target performance. In such situations, only the end echelonitem-locations that have over-achieved the target performance and theirsource locations may be considered for repair optimization constraintsiterations. In these iterations, a hypothesis of decrementing R and/or Qmay be performed. For each hypothesis iteration of R or Q, the derivatecompared with the least reduction in “system performance derivative” maybe selected, which means the item-location that results in leastreduction in “system performance” for the highest reduction in “systeminventory cost”.

If any item-location reduction of R and/or Q results in violation ofperformance constraints or the end-echelon item-location targetperformance, such item-location may be removed from the next set ofrepair iterations.

Various embodiments of optimization may include a variety of finalresults. In an embodiment, the final results of the optimization may befor each item-location and may include: re-order point R computed in theoptimization; re-order Quantity Q computed in the optimization; expectedfill rate as computed in the final iteration; expected customer waittime as computed in the final iteration; safety stock ss=R−μ_(PPV);expected back order as computed in the final iteration; averageinventory as computed in the final iteration; stock level S=R+Q; averageinventory cost that equals average inventory multiplied by the inventoryholding cost; cycle stock equal to the average inventory−safety stock.

Various embodiments may also include a method of selection of adifferent distribution function in the computation of first order andsecond order loss functions based on the value of μ_(PPV) and σ_(PPV) ².For example, if

μ_(i)≦50 and σ_(i) ²≦μ_(i)

In this case the distribution of PPV is assumed to be poisson. So we useof the appropriate line loss functions of a poisson distribution withmean μ_(i)//

${g_{i}(x)} = \frac{\mu_{i}^{x}e^{- \mu_{i}}}{x!}$${G_{i}^{0}(x)} = {1 - {\sum\limits_{y = 0}^{x}\; {g_{i}(y)}}}$G_(i)¹(x) = −(x − μ_(i))G_(i)⁰(x) + μ_(i) g_(i)(x)${G_{i}^{2}(x)} = {\left( \frac{1}{2} \right)\left\{ {{\left\lbrack {\left( {x - \mu_{i}} \right)^{2} + x} \right\rbrack {G_{i}^{0}(x)}} - {{\mu \left( {x - \mu_{i}} \right)}\; {g_{i}(x)}}} \right\}}$

Else If μ_(i)≦50 and σ_(i) ²>μ_(i)

In this case the distribution of PPV is assumed to be negative binomial.Use of the appropriate line loss functions of a negative binomialdistribution with mean μ_(i) and variance σ_(i) ²// may occur.

-   -   // First calculate the various parameters for the negative        binomial distribution, p and n //

$\mspace{79mu} {{{Calculate}\mspace{14mu} p_{i}} = {1 - \frac{\mu_{i}}{\sigma_{i}^{2}}}}$$\mspace{79mu} {{{Calculate}\mspace{14mu} n_{i}} = {\mu_{i} \times \left( \frac{1 - p_{i}}{p_{i}} \right)}}$$\mspace{79mu} {{{Calculate}\mspace{14mu} \beta_{i}} = \frac{p_{i}}{1 - p_{i}}}$$\mspace{79mu} {{g_{i}(x)} = {\frac{\Gamma \left( {n_{i} + x} \right)}{{\Gamma \left( n_{i} \right)}{\Gamma \left( {x + 1} \right)}}{p_{i}^{x}\left( {1 - p_{i}} \right)}^{n}}}$$\mspace{79mu} {{G_{i}^{0}(x)} = {1 - {\sum\limits_{y = 0}^{x}\; {g_{i}(y)}}}}$     G_(i)¹(x) = −(x − n_(i)β_(i))G_(i)⁰(x) + (x + n_(i))β_(i)g_(i)(x)${G_{i}^{2}(x)} = {\left( \frac{1}{2} \right)\left\{ {{\left\lbrack {{{n_{i}\left( {n_{i} + 1} \right)}\beta_{i}^{\; 2}} - {2n_{i}\beta_{i}x} + {x\left( {x + 1} \right)}} \right\rbrack {G_{i}^{0}(x)}} + {\left\lbrack {{\left( {n_{i} + 1} \right)\beta_{i}} - x} \right\rbrack \left( {x + n_{i}} \right)\beta_{i}\; {g_{i}(x)}}} \right\}}$     Else  if  μ_(i) > 50

In this case the PPV is normally distributed; so we use the first orderand second order line loss functions of a normal distribution//

-   -   // First transform to the unit normal variate z //

$z_{i} = \frac{x - \mu_{i}}{\sigma_{i}}$

-   -   // Next calculate the pdf and 1-cdf respectively//

${\varphi \left( z_{i} \right)} = {\frac{1}{\sqrt{2\pi}}e^{{- z_{i}^{2}}/2}}$Φ⁰(z_(i)) = ∫_(z_(i))^(∞)φ(z_(i))dz

-   -   //Now calculate the first order loss and second order loss //

G_(i)¹(x) = σ[−z_(i)Φ⁰(z_(i)) + φ(z_(i))]G_(i)²(x) = σ²⌊(z_(i)² + 1)Φ⁰(z_(i)) − z_(i)  φ(z_(i))⌋

Reference in the foregoing specification to “one embodiment”, “anembodiment”, or “another embodiment” means that a particular feature,structure, or characteristic described in connection with the embodimentis included in at least one embodiment of the invention. The appearancesof the phrase “in one embodiment” in various places in the specificationare not necessarily all referring to the same embodiment.

While the exemplary embodiments have been shown and described, it willbe understood that various changes and modifications to the foregoingembodiments may become apparent to those skilled in the art withoutdeparting from the spirit and scope of the present invention.

What is claimed is:
 1. A system, comprising: a multi-echelon supplychain network comprising two or more entities, the two or more entitiescomprising at least a first entity that produces an item and at least afinal entity comprising a customer demand; one or more computerscomprising one or more memory units and one or more processing units,collectively configured to: receive initial inputs over a computernetwork, the initial inputs comprising a target performance of themulti-echelon supply chain network and the two or more entities, each ofthe two or more entities comprising a reorder point (R) and an orderingquantity (Q); compute a baseline inventory performance; compare thebaseline inventory performance to the target performance; compute areorder point derivative and an ordering quantity derivative for each ofthe two or more entities; sort the one or more reorder point andordering quantity derivatives; select a best derivative (D′) based onmaximizing improvement in inventory performance while minimizingincrease in cost; constantly monitor the D′ to determine whether the D′is the reorder point derivative or the ordering quantity derivative;automatically change the reorder point (R) of the entity correspondingto the best derivative to the R plus a reorder point increment (Inc R)when the D′ is the reorder point derivative; automatically change theordering quantity (Q) of the entity corresponding to the best derivativeto the Q plus an ordering quantity increment (Inc Q) when the D′ is theordering quantity derivative; compute a new inventory performance; andcompare the new inventory performance to the target performance; and atleast one of the two or more entities, adjusts the ordering quantity (Q)at least partially based on the new inventory performance such that thesize of the order is based on the adjusted ordering quantity (Q) of theitem when the reorder point (R) is reached to reduce a customer waittime for the item based on the target performance associated with thefinal entity in the multi-echelon supply chain network.
 2. The system ofclaim 1, wherein the initial inputs further comprise: a reorder pointincrement and an ordering quantity increment (Q′); an average lead-timefor each of the two or more entities in the multi-echelon supply chainnetwork; a lead-time variance for each of the two or more entities inthe multi-echelon supply chain network; a mean daily demand of each ofthe two or more entities in the multi-echelon supply chain network; ademand variance of each of the two or more entities in the multi-echelonsupply chain network; a unit cost for each of the two or more entitiesin the multi-echelon supply chain network; a holding cost for each ofthe two or more entities in the multi-echelon supply chain network; andan ordering cost for each of the two or more entities in themulti-echelon supply chain network.
 3. The system of claim 2, whereinthe target performance further comprises a fill rate.
 4. The system ofclaim 3, wherein: the initial inputs further comprise at least oneperformance constraint; and the one or more computers are furtherconfigured to: automatically perform at least one optimizationconstraint iteration based on the at least one performance constraintfor at least one of the two or more entities in the multi-echelon supplychain network such that the at least one entity is considered for theoptimization constraint iteration when the at least one performanceconstraint is satisfied.
 5. The system of claim 4, wherein the one ormore computers are further configured to: perform at least one costreduction repair iteration by reducing at least one of either the R orthe Q associated with at least one entity in the multi-echelon supplychain network; and automatically perform the cost reduction repairiterations by simultaneously determining a change in inventoryperformance for levels in the multi-echelon supply chain network whenthe R is decremented by the R′ and when the Q is decremented by the Q′.6. The system of claim 5, wherein the final entity comprises one or moresource entities, and the at least one cost reduction repair iterationautomatically considers only the final entity and the one or more sourceentities of the final entity when the final entity has over-achieved thetarget performance and the at least one source entity is considered forthe cost reduction repair iteration.
 7. The system of claim 6, whereinthe one or more computers are further configured to report: an expectedfill rate of the final entity; an expected customer wait time at thefinal entity; an average inventory as a function of the Q, safety stock,and expected back order; the safety stock; a stock level; the averageinventory cost; and a cycle stock.
 8. The system of claim 2, wherein:each entity further comprises an item and a level location; and computethe baseline inventory performance further comprises: create a sortedlist by sorting each of the one or more of the entities in themulti-echelon supply chain network by the item and by the levellocation; retrieve a first entity on the sorted list; determine whetherany entities have been found; automatically set R equal to R′ and Qequal to Q′ when at least one entity has been found; determine whetherthe entity comprises a source; automatically add a customer wait time ofthe source to the lead-time when the entity comprises a source;automatically add a customer wait time variance to the lead-timevariance when the entity comprises a source; compute a new inventoryperformance comprising at least one of a fill rate, an expected backorder, a customer wait time, a customer wait time variance, and anexpected back order variance; retrieve a second entity on the sortedlist; and automatically determine whether an additional entity isavailable and return to set R equal to R′ and Q equal to Q′ when theadditional entity is available.
 9. The system of claim 2, wherein theone or more computers are further configured to compute the reorderpoint derivative (Rd) and the ordering quantity derivative (Qd) for eachof the two or more entities comprising: retrieve the entity; perform anR series, the R series comprising: set the R equal to the R plus an IncR and set the Q equal to the Q; compute a system performance and cost;compute a delta performance and cost for a change in the R; and computea derivative for the change in the R; perform a Q series, the Q seriescomprising: set the Q equal to the Q plus an Inc Q and set the R equalto the R; compute a system performance and cost; compute a deltaperformance and cost for a change in the Q; and compute a derivative forthe change in the Q; and compute any remaining entity derivatives. 10.The system of claim 9, wherein compute a system performance and costfurther comprises: retrieve a current setting of the R and Q; determinewhether the entity has an entity source; automatically add a entitysource's computed customer wait time to the lead time and add the entitysource's computed customer wait time variance to the lead time variancewhen the entity has an entity source; compute inventory performance forat least one of a fill rate, an expected back order, a customer waittime, a customer wait time variance, and an expected back ordervariance; compute an average inventory cost; compute a delta performanceand delta cost due to change in one of the R and the Q; add the deltaperformance and delta cost to system performance and cost; determinewhether the entity has a destination; automatically retrievedestinations from a highest level to a lowest level when the entity hasa destination and return to retrieve current setting of entity the R andthe Q; and automatically return the system performance and cost when theentity does not have a destination.
 11. A computer-implemented method,comprising: receiving initial inputs over a computer network, theinitial inputs comprising a target performance of a multi-echelon supplychain network and two or more entities comprising at least a firstentity that produces an item and at least a final entity comprising acustomer demand, each of the two or more entities comprising a reorderpoint (R) and an ordering quantity (Q); computing a baseline inventoryperformance; comparing the baseline inventory performance to the targetperformance; computing a reorder point derivative and an orderingquantity derivative for each of the two or more entities; sorting theone or more reorder point and ordering quantity derivatives; selecting abest derivative (D′) based on system performance or cost data;constantly monitoring the D′ to determine whether the D′ is the reorderpoint derivative or the ordering quantity derivative; automaticallychanging the reorder point (R) of the entity corresponding to the bestderivative to the R plus a reorder point increment (Inc R) when the D′is the reorder point derivative; automatically changing the orderingquantity (Q) of the entity corresponding to the best derivative to the Qplus an ordering quantity increment (Inc Q) when the D′ is the orderingquantity derivative; computing a new inventory level performance;comparing the new inventory level performance to the target performance;and adjusting, by at least one of the two or more entities, the orderingquantity (Q) at least partially based on the new inventory performancesuch that the size of the order is based on the adjusted orderingquantity (Q) of the item when the reorder point (R) is reached to reducea customer wait time for the item based on the target performanceassociated with the final entity in the multi-echelon supply chainnetwork.
 12. The computer-implemented method of claim 11, wherein theinitial inputs further comprise: a reorder point increment and anordering quantity increment (Q′); an average lead-time for each of thetwo or more entities in the multi-echelon supply chain network; alead-time variance for each of the two or more entities in themulti-echelon supply chain network; a mean daily demand of each of thetwo or more entities in the multi-echelon supply chain network; a demandvariance of each of the two or more entities in the multi-echelon supplychain network; a unit cost for each of the two or more entities in themulti-echelon supply chain network; a holding cost for each of the twoor more entities in the multi-echelon supply chain network; and anordering cost for each of the two or more entities in the multi-echelonsupply chain network.
 13. The computer-implemented method of claim 12,wherein the target performance further comprises a fill rate.
 14. Thecomputer-implemented method of claim 13, further comprising:automatically performing, by the computer, at least one optimizationconstraint iteration based on the at least one performance constraintfor at least one of the two or more entities in the multi-echelon supplychain network such that the at least one entity is considered for theoptimization constraint iteration when the at least one performanceconstraint is satisfied.
 15. The computer-implemented method of claim14, further comprising: performing at least one cost reduction repairiteration by reducing at least one of either the R or the Q associatedwith at least one entity in the multi-echelon supply chain network; andautomatically performing the cost reduction repair iterations bysimultaneously determining a change in inventory performance for levelsin the multi-echelon supply chain network when the R is decremented bythe R′ and when the Q is decremented by the Q′.
 16. Thecomputer-implemented method of claim 15, wherein the final entityfurther comprises one or more source entities, and the at least one costreduction repair iteration automatically considers only the final entityand the one or more source entities of the final entity when the finalentity has over-achieved the target performance and the at least onesource entity is considered for the cost reduction repair iteration. 17.The computer-implemented method of claim 16, further comprising:reporting an expected fill rate of the final entity; reporting anexpected customer wait time at the final entity; reporting an averageinventory as a function of the Q, safety stock, and expected back order;reporting the safety stock; reporting a stock level; reporting theaverage inventory cost; and reporting a cycle stock.
 18. Thecomputer-implemented method of claim 12, wherein: each entity furthercomprises an item and a level location; and compute the baselineinventory performance further comprises: creating a sorted list bysorting each of the one or more of the entities in the multi-echelonsupply chain network by item and by the item and by the level location;retrieving a first entity on the sorted list; determining whether anyentity has been found; automatically setting R equal to R′ and Q equalto Q′ when at least one entity has been found; determining whether theentity comprises a source; adding a customer wait time of the source tothe lead-time if the entity comprises a source; adding a customer waittime variance to the lead-time variance of the entity comprises asource; computing a new inventory performance comprising at least one ofa fill rate, an expected back order, a customer wait time, a customerwait time variance, and an expected back order variance; retrieving asecond entity on the sorted list; determining whether an additionalentity is available and returning to set R equal to R′ and Q equal to Q′if additional entities are available; and completing the baselineperformance if no additional entities have been found.
 19. Thecomputer-implemented method of claim 12, further computing the reorderpoint derivative (Rd) and the ordering quantity derivative (Qd) for eachof the two or more entities comprising: retrieving the entity;performing an R series, the R series comprising: setting the R equal tothe R plus an Inc R and set the Q equal to the Q; computing a systemperformance and cost; computing a delta performance and cost for achange in the R; and computing a derivative for the change in the R;performing a Q series, the Q series comprising: setting the Q equal tothe Q plus an Inc Q and set the R equal to the R; computing a systemperformance and cost; computing a delta performance and cost for achange in the Q; and computing a derivative for the change in the Q; andcomputing any remaining entity derivatives.
 20. The computer-implementedmethod of claim 19, wherein computing a system performance and costcomprises: retrieving a current setting of the entities R and Q;determining whether the entity has an entity source; automaticallyadding a entity source's computed customer wait time to the lead timeand adding the entity source's computed customer wait time variance tothe lead time variance when the entity has an entity source; computinginventory performance for at least one of a fill rate, an expected backorder, a customer wait time, a customer wait time variance, and anexpected back order variance; computing an average inventory cost;computing a delta performance and delta cost due to change in one of theR and the Q; adding the delta performance and delta cost to systemperformance and cost; determining whether the entity has a destination;retrieving destinations from a highest level to a lowest level if theentity has a destination and return to retrieve current setting ofentities the R and the Q; and returning the system performance and costif the entity does not have a destination.